package com.zmn.plat.business.interfaces.part;

import java.util.List;

import com.zmn.mcc.cas.model.LoginStaff;
import com.zmn.plat.model.entity.part.PartSku;
import com.zmn.plat.model.entity.part.PartSkuPrice;
import com.zmn.plat.model.vo.part.PartSkuVO;

/**
 * 类描述：PartSkuBService 该类应该使用缓存
 *
 * @author DaiZhichao
 * @since 2018/10/26 12:41
 */

public interface PartSkuBService {

    void insertSkuAndPrice(PartSku partSku, PartSkuPrice skuPrice, LoginStaff mcStaff);

    void updateSkuAndPrice(PartSku partSku, PartSkuPrice skuPrice, LoginStaff mcStaff);

    /**
     * 描述:根据传入的 partSkuVO 查询是否有重复配件
     *
     * @param partSkuVO
     *            PartSkuVO
     * @return Boolean 是否重复
     * @author DaiZhichao
     * @since 2018/12/20 15:51
     */
    Boolean findIdenticalPart(PartSkuVO partSkuVO);

    /**
     * 描述: 遍历配件分类递归获取所有配件（未测试）
     *
     * @param voList
     *            传入的 配件VO 列表
     * @param categId
     *            配件分类ID
     * @since 2019/03/08 15:55
     */
    List<PartSkuVO> getAllPart(List<PartSkuVO> voList, Integer categId);
}
